When a plurality of base materials are welded by arc welding, welding with weaving motion is employed, in which welding is executed with a sinusoidal-wave weaving motion in a left-right direction of a welding line while a welding electrode is advanced in a welding direction. This welding with weaving motion has been conventionally executed by swinging a welding torch left and right, or tilting the welding torch left and right around the welding torch. When an articulated robot is caused to execute such welding with weaving motion, high trajectory accuracy is required.
In such an articulated robot, servo control is executed on an axis basis. However, since the natural frequency is low, to reduce oscillation, speed feedforward is almost not applied. Hence, an actual feedback value has a large phase delay with respect to a target value, and the response characteristic of a speed control unit of a servo controller varies depending on each axis. The large phase delay and the various response characteristics have resulted in a trajectory error. Also, a motor that causes each axis of such an articulated robot to operate is coupled with an arm through a reduction gear. When elastic deformation due to an insufficiency in stiffness of the reduction gear is corrected, it is a precondition that the motor operates according to a command value. However, since the feedforward does not sufficiently function, the motor is almost incapable of operating according to the command value. Elastic deformation compensation has not sufficiently functioned. The following technology is known as the elastic-deformation-compensation control for such an articulated robot.
Japanese Unexamined Patent Application Publication No. 61-201304 (PTL 1) discloses a method of controlling the position of a robot arm with high accuracy in response to a position command value, even if the mechanical stiffness of a joint group of a reduction gear or the like is low. In this position control method, by substituting a position command value of each arm forming a robot, a speed obtained by first-order differentiation on the position command value, and an acceleration obtained by second-order differentiation on the position command value, into a motion equation of the robot arm with regard to the mechanical stiffness of a joint between respective arms, a torque to be added to each joint is calculated. Then, by dividing the obtained torque by a constant, a function, or a mechanical spring stiffness, which is given as a table in a control device, an elastic deformation angle caused by the mechanical stiffness of each joint is obtained. By adding the obtained elastic deformation angle to the position command value to cancel out the elastic deformation of each joint, a new position command value is set.
Also, Japanese Unexamined Patent Application Publication No. 2005-186235 (PTL 2) discloses a control device for a robot in which each axis operates according to a command even if an interference force acts. This control device is a control device for a robot formed of a plurality of axes that interfere with each other. The robot includes a position control unit and a speed control unit for operating each axis according to a command of the axis, which is formed of a motor, an arm coupled with the motor through a reduction gear or the like, and a motor-position detector that detects the position of the motor. The control device includes an interference-force calculation unit that obtains the interference force acting on other axis by calculation, from a command of a relevant axis, and a non-interference-torque-signal creation unit that obtains a motor-torque command signal so that the relevant axis operates according to a command even if the interference force acts on the relevant axis from the other axis, from the command of the relevant axis and the calculation value of the interference force acting from the other axis. The control device further includes a non-interference-position-signal creation unit that obtains a motor-position signal so that the relevant axis operates according to the command even if the interference force acts on the relevant axis from the other axis, from the command of the relevant axis and the calculation value of the interference force acting from the other axis.